$(function() {
	init();
});
// 页面初始化调用方法
function init() {
	// 1.初始化Table
	var roleTable = new TableInit();
	roleTable.Init();
}
//表格初始化
var TableInit = function() {
	var oTableInit = new Object();
	// 初始化Table
	oTableInit.Init = function() {
		$('#BTMTables').bootstrapTable({
			url : '../../../BTMSoftwareVersion/getBTMVersionList', // 请求后台的URL（*）
			method : "POST",
			contentType : "application/x-www-form-urlencoded",
			toolbar : '#toolbar',
			striped : true, // 是否显示行间隔色
			cache : false, // 是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
			pagination : true, // 是否显示分页（*）
			sortable : true, // 是否启用排序
			checkboxHeader : false,// 是否显示表头的全选
			queryParamsType : "undefined", // 默认limit
			queryParams : oTableInit.queryParams,// 传递参数（*）
			sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
			pageNumber : 1, // 初始化加载第一页，默认第一页
			pageSize : 10, // 每页的记录行数（*）
			pageList : [ 10, 25, 50, 100 ], // 可供选择的每页的行数（*）
			sortName : "CREATE_TIME",
			sortOrder : "DESC",
			search : false, // 是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
			strictSearch : true,
			showColumns : true, // 是否显示所有的列
			minimumCountColumns : 2, // 最少允许的列数
			clickToSelect : true, // 是否启用点击选中行
			height: 500, // 行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
			uniqueId : "ID", // 每一行的唯一标识，一般为主键列
			showToggle : true, // 是否显示详细视图和列表视图的切换按钮
			cardView : false, // 是否显示详细视图
			detailView : false,
			singleSelect : true,
			onLoadSuccess:function(){
	            $('.bootstrap-table tr td').each(function () {
	                $(this).attr("title", $(this).text());
	                $(this).css("cursor", 'pointer');
	            });
	        },
			responseHandler : function(res) {
				return getTableData(res);
			}, // 是否显示父子表
			columns : [ {
				checkbox : true
			}, {
				field : 'ID',
				title : 'BTM报文ID'
			}, {
				field : 'MESSAGE_NAME',
				title : 'BTM报文名称',
				sortable : true,// 是否可排序
				order : "DESC",// 默认排序方式
				formatter : onceHtml
			}, {
				field : 'CREATE_USER',
				title : '创建人'
			}, {
				field : 'CREATE_TIME',
				title : '创建时间',
				sortable : true,// 是否可排序
				order : "DESC"// 默认排序方式
			}
			]
		});
	};
	function onceHtml(value, row, index) {
		return "<a id='" + row.ID
				+ "' href='#' onclick='details(this)'>" + row.MESSAGE_NAME
				+ "</a>";

	}
	// 得到查询的参数
	oTableInit.queryParams = function(params) {
		var temp = { // 这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的pageSize,
			// pageNumber, searchText, sortName, sortOrder
			pageSize : params.pageSize, // 页面大小
			pageNumber : params.pageNumber, // 页码
			sortName : "CREATE_TIME",
			sortOrder : params.sortOrder,
			versionType : "7",
			messageName : $("#BTMNameSearch").val()
		};
		return temp;
	};
	return oTableInit;
};
// 弹出新增页面
function add() {
	BootstrapDialog
			.show({
				title : '新增BTM报文文件',
				message : $(
						"<form id='myform' class='form-inline' style='height:100px'></form>")
						.load('addBTM.html'),
				buttons : [
						{
							icon : 'glyphicon glyphicon-check',
							label : '确定',
							cssClass : 'btn-primary',
							autospin : true,
							action : function(dialogRef) {
								var formData = new FormData(document
										.getElementById("myform"));// 表单id
								var packageText = $("#upload_file").val();
								if (packageText.trim() == ""
										|| packageText == null) {
									var content = "BTM报文文件不能为空!";
									warning(content);
								} else {
									$.ajax({
												url : '../../../BTMSoftwareVersion/addBTMVersion',
												type : 'POST',
												data : formData,
												async : false,
												cache : false,
												contentType : false,
												processData : false,
												success : function(result) {
													if (result.flag == 0) {
														var content = "新增成功!!!";
														success(content);
														queryBytableId('BTMTables');
													} else {
														var content = result.errorInfo;
														warning(content);
													}
												}
											});
								}
							}
						}, {
							label : '取消',
							action : function(dialogRef) {
								dialogRef.close();
							}
						} ]
			});
}
// 弹出编辑页面
function edit() {
	var selectVersion = $("#BTMTables").bootstrapTable(
			'getSelections');
	if (selectVersion.length == 0) {
		var content = "请选择要编辑的BTM报文文件!";
		info(content);
	} else {
		var id = selectVersion[0].ID;
		var messageName = selectVersion[0].MESSAGE_NAME;
		BootstrapDialog
				.show({
					title : '编辑BTM报文文件',
					message : $(
							"<form id='myform' class='form-inline' style='height:100px'></form>")
							.load('addBTM.html'),
					onshown : function() {
						$("#versionId").val(id);
						$("#upload_file_tmp").val(messageName);
					},
					buttons : [
							{
								icon : 'glyphicon glyphicon-check',
								label : '确定',
								cssClass : 'btn-primary',
								autospin : true,
								action : function(dialogRef) {
									var formData = new FormData(document
											.getElementById("myform"));// 表单id
									var packageText = $("#upload_file_tmp")
											.val();
									var packageTextTmp = $("#upload_file")
											.val();
									if (packageText.trim() == ""
											|| packageText == null) {
										var content = "LKJ数据文件不能为空!!!!";
										warning(content);
									} else if (packageText != messageName) {
										if (packageTextTmp.trim() == ""
												|| packageText == null) {
											var content = "文件不正确,请重新添加!!!!";
											warning(content);
										}else{
											versionFile(formData);
										}
									} else {
										versionFile(formData);
									}
								}
							}, {
								label : '取消',
								action : function(dialogRef) {
									dialogRef.close();
								}
							} ]
				});
	}
}
//发送编辑请求
function versionFile(formData){
	$.ajax({
		url : '../../../BTMSoftwareVersion/editBTMVersion',
		type : 'POST',
		data : formData,
		async : false,
		cache : false,
		contentType : false,
		processData : false,
		success : function(result) {
			if (result.flag == 0) {
				var content = "修改成功!!!";
				success(content);
				queryBytableId('BTMTables');
			} else {
				var content = result.errorInfo;
				warning(content);
			}
		},
		error : function() {
			var content = "修改失败";
			warning(content);
		}
	});
}
// 删除LKJ软件版本操作
function deleteVersion() {
	var selectVersion = $("#BTMTables").bootstrapTable(
			'getSelections');
	if (selectVersion.length == 0) {
		var content = "请选择要删除的LKJ数据版本!";
		info(content);
	} else {
		var id = selectVersion[0].ID;
		BootstrapDialog.show({
			title : '提示',
			message : "您确定要删除吗?",
			buttons : [ {
				icon : 'glyphicon glyphicon-check',
				label : '确定',
				cssClass : 'btn-primary',
				autospin : true,
				action : function(dialogRef) {
					dialogRef.close();
					deleteVersionID(id);
				}
			}, {
				label : '取消',
				action : function(dialogRef) {
					dialogRef.close();
				}
			} ]
		});
	}
}
// 删除具体ajax操作
function deleteVersionID(id) {
	$.ajax({
		url : "../../../BTMSoftwareVersion/deleteBTMVersion",
		type : "post",
		data : {
			"id" : id
		},
		dataType : "json",
		success : function(data) {
			if (data.flag == 0) {
				var content = "LKJ数据版本删除成功!";
				success(content);
				queryBytableId('BTMTables');
			} else {
				var content = "LKJ数据版本删除失败!";
				danger(content);
			}
		},
		error : function() {
			var content = "LKJ数据版本删除失败!";
			danger(content);
		}
	});
}

function details(t) {
	var versionId = t.id;
	var params = "versionId=" + versionId;
	window.location.href = "../../../BTMSoftwareVersion/downloadBTMVersion.action?"
			+ params;
}